МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
/
ЗВІТ
до практичної роботи № 2
з курсу
“Інформаційно-комунікаційні системи”ВИВЧЕННЯ ПРАВИЛ МАРШРУТИЗАЦІЇ В IP-МЕРЕЖАХ
Львів – 2010р.
Мета роботи
Ознайомитись з правилами маршрутизації в ІР-мережах та навчитись задавати таблиці маршрутизації для локальної обчислювальної мережі.
Теоретичні відомості
Правила маршрутизації визначають, куди відправляти IP-пакети. Дані маршрутизації зберігаються в одній з таблиць ядра. Вести таблиці маршрутизації можна статично або динамічно. Статичний маршрут - це маршрут, який задається явно за допомогою команди route. Динамічна маршрутизація виконується процесом-демоном (routed або gated), який веде і модифікує таблицю маршрутизації на основі повідомлень від інших комп'ютерів мережі. Для виконання динамічної маршрутизації розроблені спеціальні протоколи: RIP, OSPF, IGRP, EGP, BGP і так далі.
Динамічна маршрутизація необхідна в тому випадку, якщо у вас складна, постійно змінна структура мережі і одна і та ж машина може бути доступна по різних інтерфейсах (наприклад, через різні Ethernet або SLIP інтерфейси). Маршрути, задані статично, зазвичай не міняються, навіть якщо використовується динамічна маршрутизація.
Для персонального комп'ютера, що підключається до локальної мережі, в більшості ситуацій буває досить статичної маршрутизації командою route. Перш ніж намагатися будувати маршрути, прогляньте таблицю маршрутизації ядра за допомогою команди netstat -n -r. Ви повинні побачити щось подібне до наступного:
Код:
rigon@ubuntu-comp:~$ netstat -n -r
Таблиця маршутизации ядра протоколу IP
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.254.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.254.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
0.0.0.0 192.168.254.1 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 192.168.254.1 0.0.0.0 UG 0 0 0 eth1
Якщо таблиця порожня, то ви побачите лише заголовки стовпців. Тоді треба використовувати route. За допомогою команди route можна додати або видалити один (за один раз) статичний маршрут. Ось її формат:
Код:
route [-f] операція [-тип] адресат шлюз [dev] інтерфейс
Тут аргумент операція може приймати одне з двох значень: add (маршрут додається) або delete (маршрут видаляється). Аргумент адресат може бути IP-адресом машини, IP-адресом мережі або ключовим словом default . Аргумент шлюз - це IP-адрес комп'ютера, на який слід пересилати пакет (цей комп'ютер повинен мати прямий зв'язок з вашим комп'ютером). Команда
Код:
route -f
видаляє з таблиці дані про всі шлюзи. Необов'язковий аргумент тип набуває значень net або host . У першому випадку в полі адресата вказується адреса мережі, а в другому - адреса конкретного комп'ютера (хоста).
Як правило, буває необхідно побудувати маршрутизацію по згадуваних вище трьох інтерфейсах:
* локальний інтерфейс (lo)
* інтерфейс для плати Ethetnet (eth0)
* інтерфейс для послідовного порту (PPP або SLIP).
Локальний інтерфейс підтримує мережу з IP-номером 127.0.0.1. Тому для маршрутизації пакетів з адресою 127.... використовується команда:
Код:
route add -net 127.0.0.1 lo
Якщо у вас для зв'язку з локальною мережею використовується одна плата Ethernet, і всі машини знаходяться в цій мережі (мережева маска 255.255.255.0), то для налаштування маршрутизації досить викликати:
Код:
route add -net 192.168.36.0 netmask 255.255.255.0 eth0
Якщо ж ви маєте декілька інтерфейсів, то вам треба визначитися з мережевою маскою і викликати команду route для кожного інтерфейсу.
Оскільки дуже часто IP-пакети з вашого комп'ютера можуть вирушати не в одну мережу, а в різні мережі (наприклад, при перегляді різних сайтів в Інтернеті), то в принципі треба було б задати дуже багато маршрутів. Вочевидь, зробити це було б дуже складно, точніше просто неможливо. Тому вирішення проблеми маршрутизації пакетів перекладають на плечі спеціальних комп'ютерів - маршрутизаторів, а на звичайних комп'ютерах задають маршрут за умовчанням, який в...